Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
playwright-core
Advanced tools
The playwright-core npm package is a library that provides a high-level API to control headless Chrome, Firefox, and WebKit with a single API. It is designed for automating web browser interactions for the purposes of web scraping, automated testing, and web automation.
Browser Automation
Automate browser actions such as opening pages, clicking on elements, and navigating websites.
const { chromium } = require('playwright-core');
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
// other actions...
await browser.close();
})();
Web Scraping
Extract data from web pages by navigating to them and retrieving the content.
const { firefox } = require('playwright-core');
(async () => {
const browser = await firefox.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
const data = await page.content();
// process data...
await browser.close();
})();
Automated Testing
Perform automated tests on web applications by simulating user interactions and verifying page content.
const { webkit } = require('playwright-core');
(async () => {
const browser = await webkit.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
const title = await page.title();
console.assert(title === 'Expected Page Title');
await browser.close();
})();
Puppeteer is a Node library which provides a high-level API over the Chrome DevTools Protocol. It is similar to playwright-core but was initially designed specifically for Chrome and later added support for Firefox. Puppeteer is developed by the Chrome DevTools team.
Selenium WebDriver is one of the most well-known browser automation tools. It supports multiple browsers and is language-agnostic, making it a popular choice for end-to-end testing. Unlike playwright-core, Selenium requires separate drivers for each browser and might be slower in execution.
Cypress is a front-end testing tool built for the modern web. It is both a library for writing tests and a test runner that executes the tests. Cypress offers a unique interactive test runner that allows you to see commands as they execute while also viewing the application under test. It differs from playwright-core in that it is primarily focused on testing and offers a more integrated testing experience.
This package contains the no-browser flavor of Playwright.
FAQs
A high-level API to automate web browsers
The npm package playwright-core receives a total of 9,585,354 weekly downloads. As such, playwright-core popularity was classified as popular.
We found that playwright-core demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.